package cn.fzkj.task.service;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;

@Service
public class ScheduledService {
    /**
     * second(秒), minute（分钟）, hour（小时）, day of month（一个月中的一天）, month（月份）, day of week（一周中的一天）
     * 6个都必须指定，中间使用空格分隔
     * 0 * * * * MON
     * 枚举：0,1,2,3 * * * * MON：0，1，2，3秒时执行
     * 区间：0-3 * * * * MON
     * 步长：0/4 * * * * MON ：0秒开始，每4秒执行一次
     * ? 用于处理冲突，比如日期使用 * ，而星期使用MON, 不是每天都是MON，这时日期应该是 ？
     * 0和7代表周日，1-6代表周一到周六
     * L：最后     W：工作日      C：与calendar联系后计算过的值      #：星期  eg：4#2：第二个星期四
     *
     * eg：
     *  【0 0/5 14,18 * * ?】每天14点、18点整，每隔5分钟执行一次
     * 【 0 15 10 ? * 1-6 】 每个月的周一至周六 10：15 分执行一次
     * 【 0 0 2 ? * 6L】 每个月的最后一个周六凌晨2点执行一次
     *  【0 0 2 LW * ?】 每个月的最后一个工作日凌晨2点执行一次
     *  【0 0 2-4 ? * 1#1】 每个月的第一个周一凌晨2点到4点期间，每个整数点都执行一次
     */
    @Scheduled(cron = "0/4 * * * * 0-6")
    public void hello (){
        System.out.println("hello..........");
    }

}
